Luminance preserving color quantization in RGB color space

ABSTRACT

A color quantization method in RGB color space which preserves high precision of luminance information in an original high precision RGB image signal which is quantized to a lower precision (lower bit depth) RGB signal. The method can be used to convert the original RGB signal to arbitrary quantization levels in RGB space.

FIELD OF THE INVENTION

The present invention relates generally to video image color quantization in image processing and in particular to color quantization within the RGB color space.

BACKGROUND OF THE INVENTION

RGB (Red, Green, Blue) color space, especially the one with 24-bit true color, is used in virtually every computer system as well as other applications such as television, video, etc. For display on RGB displays, images resulting from a higher precision capturing or processing system must be quantized into RGB signals of the same quantization levels of the display. The traditional true color display with 8-bit precision in each channel can display about 16.7 million colors. Although, based on research in color science, human eye can only distinguish around 10 million different colors under optimal viewing condition, the true color display is still not detailed enough for human vision perception.

This is mainly because of the non-uniformity, in the sense of human perception, of the RGB space. The non-uniformity leads to the result that in some regions of the RGB color space the different colors are perceived the same and in some other regions the colors jump by more than one JND (just noticeable difference). For quantization in the regions where colors jump by more than one JND, the quantization error is noticed by human visual system. At the same time, human visual system is much more sensitive in luminance than in chrominance. Research shows that the human eye can discern approximately 463 different gray scales, which is about 9-bits, while it can only distinguish about 150 different hues and 50 different saturation levels.

The above two properties (i.e., the non-uniformity of RGB space and high accuracy of luminance discernment), can be checked easily using an 8-bit grayscale ramp image. The traditional 24-bit true color display can display 255 different shades of grayscales with perceivable banding artifacts. When the display is made brighter, lack of bit-depth makes the banding artifacts more obvious between neighboring shades of gray scales in 24-bit displays.

The fact that human vision is much more sensitive in luminance than in chrominance, makes it possible to manipulate the quantized color signals to preserve higher precision of luminance while keeping the difference of the chrominance signals within a tolerable range.

BRIEF SUMMARY OF THE INVENTION

In one embodiment the present invention provides a color quantization method in RGB color space which preserves high precision of luminance information in an original high precision RGB image signal which is quantized to a lower precision (lower bit depth) RGB signal. The method preserves luminance information, and this is different from the conventional method that uses simple rounding. It can be used to convert the original RGB signal to arbitrary quantization levels in RGB space.

As mentioned, because the human eye is much more sensitive in luminance than chrominance, an object of the present invention is to preserve luminance value precisely. This objective is achieved by minimizing the luminance difference between the input signal and output signal on the grid of low bit depth RGB signals. However, as minimization of the luminance might result in large a difference in the chrominance components, to keep the color difference within a tolerable range, the quantization problem is formulated as a constrained minimization problem.

As such, an example method of video image color quantization according to the present invention, comprises the steps of: receiving an image signal comprising RGB signals having a first precision; quantizing the image signal into a quantized RGB signal having a second precision lower than the first precision; such that the luminance of the image signal is essentially preserved in the quantized RGB signal. The luminance information of the image signal is determined; and the quantization error in luminance information of the image signal is essentially minimized by trading off the quantization error in chrominance information of the image signal. Minimizing the quantization error in luminance information of the image signal, includes the steps of constraining chrominance errors while essentially minimizing luminance quantization errors.

In another example, the quantization step further includes the steps of: determining a set of possible RGB signal values for the quantized signal such that the difference in chrominance before and after quantization is constrained; and selecting an RGB signal value from the above possible RGB signal values that essentially minimizes the difference in luminance before and after quantization.

In another aspect the present invention provides a quantizer and video system that implement the above example methods.

BRIEF DESCRIPTION OF THE DRAWINGS

Other embodiments, features and advantages of the present invention will be apparent from the following specification taken in conjunction with the following drawings.

FIG. 1 shows an example flowchart of the steps of an embodiment of a quantization method according to the present invention which quantizes a high resolution image signal by preserving the luminance of the high resolution image signal.

FIG. 2 shows a functional block diagram of an embodiment of a luminance preserving quantizer according to the present invention.

FIG. 3 shows an example functional block diagram of a video system including a quantizer that quantizes an input high resolution image signal by preserving the luminance of the high resolution image-signal, according to the present invention.

DETAILED DESCRIPTION OF THE INVENTION

In one embodiment, the present invention provides a color quantization method in RGB color space which preserves high precision of luminance information in an original high precision RGB image signal which is quantized to a lower precision (lower bit depth) RGB signal.

The quantization method can be used for quantizing RGB signals into arbitrary quantization levels in RGB space. To simplify the description herein, an example quantization method from double precision RGB to 24-bit RGB is described. The quantization method can be used to convert the original RGB signal to arbitrary quantization levels in RGB space. For simplicity of description, in the following, color components are represented by upper case letters (RGB) to indicate 8-bit values, and by lower case letters (rgb) to indicate the higher precision values, more bits or double precision.

The problem of color quantization to true RGB color space is to find an 8-bit RGB triple to represent the higher precision rgb values. The common practice for color quantization is to round an original rgb value to its nearest RGB quantization level. However, as mentioned, because the human eye is much more sensitive in luminance than chrominance, the quantization errors from simple rounding are perceptually non-uniform for luminance and chrominance components.

According to an embodiment of the present invention, to obtain a 24-bit RGB image from high precision signals, the quantization error in luminance components is minimized by trading off the quantization errors in chrominance components. In other words, a set of 8-bit RGB triple are found such that the quantization error in luminance components is minimized.

Referring to the example flowchart in FIG. 1, in such a method, after receiving the high precision RGB image signal (step 10), the luminance information of the high precision RGB value signal is computed (step 20). There are different coefficients M₁ to calculate the luminance value, y, of an RGB signal. An example is shown in relation (1) below: $\begin{matrix} \begin{matrix} {Y = {M_{1} \cdot \begin{bmatrix} r \\ g \\ b \end{bmatrix}}} \\ {{= {\left\lbrack {0.299\quad 0.587\quad 0.114} \right\rbrack \cdot \begin{bmatrix} r \\ g \\ b \end{bmatrix}}},} \end{matrix} & (1) \end{matrix}$ where r, g, b and y are high precision values. The resulting high precision luminance information y is to be preserved when the original RGB signal [r, g, b]^(T) (wherein T means transpose) is quantized to 8-bit RGB colors for display.

The quantization error in RGB color space can be transformed back to obtain the quantization error of luminance, which should be minimized by trading off the quantization errors in chrominance components. In other words, a set of 8-bit RGB triple are found such that the luminance difference between the quantized RGB triple and the original rgb triple is reduced and preferably essentially minimized. However, this minimization of the luminance component is achieved at the cost of increasing the quantization errors in chrominance components. Therefore, the chrominance errors are constrained while minimizing luminance quantization errors to keep the color difference between the original high precision signal and the low precision signal within a tolerable range (step 30).

As such, the quantization problem is formulated as a constrained minimization problem. The quantization errors in luminance can be minimized while ensuring that the difference between colors before and after quantization is constrained, such as according to relation (2) below: $\begin{matrix} {{\begin{bmatrix} R \\ G \\ B \end{bmatrix} = {\arg\quad{\min\limits_{{\lbrack{R,G,B}\rbrack}^{T} \in {D{({r,g,b})}}}{{M_{1} \cdot \begin{bmatrix} {r - R} \\ {g - G} \\ {b - B} \end{bmatrix}}}}}},} & (2) \end{matrix}$ where D(r,g,b) is a range that for colors [R, G, B]^(T)εE D, such that the chrominance difference between [R,G,B]T and [r,g,b]^(T) is tolerable (wherein ${\arg\quad{\min\limits_{x \in S}\quad{f(x)}}}\quad$ is the x that minimizes f(x)).

If the setup parameters of a display is known (e.g., the system white point, chromaticity coordinates of R, G and B, and the gamma law), in one example, the colors can be converted into device independent color space, e.g., CIE Lab color space, and the CIE 1994 color difference model is used to calculate the color difference between the high precision [r,g,b]^(T) color and the 8-bit [R,G,B]^(T). The CIE 1994 color difference model is based on CIE Lab and attempts to derive local distortions of the CIE Lab to make the color difference more uniform in the color space. CIE Lab color space is directly based on CIE XYZ, which is device independent and at the root of all colorimetry. CIE94 color difference DE*94 is defined on CIE Lab color space as described below.

For two colors C₁=[L₁, a₁, b₁]^(T) and C₂=[L₂, a₂, b₂]^(T) in CIE Lab color space, the CIE94 color difference DE*94 is as example relation (3) below (where L, a, b are the coordinates in CIE Lab color space, as in r,g,b for RGB color space): $\begin{matrix} {{{{{DE}^{\star}94\left( {C_{1},C_{2}} \right)} = \sqrt{\left( \frac{dl}{{kl} \cdot {sl}} \right)^{2} + \left( \frac{dc}{{kc} \cdot {sc}} \right)^{2} + \left( \frac{dh}{{kh} \cdot {sh}} \right)^{2}}},{where}}\begin{matrix} {{{dl} = {L_{1} - L_{2}}},} \\ {{dh} = \left\{ {\begin{matrix} \sqrt{{de}^{2} - {dl}^{2} - {dc}^{2}} & {{{if}\quad{de}^{2}} > {{dl}^{2} + {dc}^{2}}} \\ 0 & {else} \end{matrix},} \right.} \\ {{{de} = \sqrt{\left( {L_{1} - L_{2}} \right)^{2} + \left( {a_{1} - a_{2}} \right)^{2} + \left( {b_{1} - b_{2}} \right)^{2}}},} \\ {{dc} = {c_{2} - c_{1}}} \\ {{= {\sqrt{a_{1}^{2} + b_{1}^{2}} - \sqrt{a_{2}^{2} + b_{2}^{2}}}},} \\ {{= {\sqrt{a_{1}^{2} + b_{1}^{2}} - \sqrt{a_{2}^{2} + b_{2}^{2}}}},} \end{matrix}{and}\begin{matrix} {{{kl} = {{kc} = {{kh} = 1}}},} \\ {{{sl} = 1},} \\ {{{sc} = {1 + {0.045 \cdot c}}},} \\ {{{sh} = {1 + {0.015 \cdot c}}},} \end{matrix}{where}{c = {\sqrt{c_{1} \cdot c_{2}}.}}} & (3) \end{matrix}$

With the help of the CIE 1994 color difference model, the quantization is formulated as minimizing the difference between the real luminance value represented by [r,g,b]^(T) color and the luminance value represented by 8-bit [R,G,B]^(T), with the constraint that the color difference between them, expressed in DE* 94, is smaller than a threshold in the example relation (4) below: $\begin{matrix} {\begin{bmatrix} R \\ G \\ B \end{bmatrix} = {\arg\quad{\min\limits_{{{DE}^{\star}94} < {Threshold}}{{{M_{1} \cdot \begin{bmatrix} {r - R} \\ {g - G} \\ {b - B} \end{bmatrix}}}.}}}} & (4) \end{matrix}$

In order to reduce the computation needed for this minimization for real-time conversion of TV signals, a simpler format can be implemented according to another aspect of the present invention. The main idea is same as above, however DE* 94 is not calculated. Instead, a small range is defined as: {[R,G,B]^(T)|Rε{└r┘,┌r┐}, Gε{└g┘,┌g┐},Bε{└b┘,┌b┐}}, where └•┘ is the nearest quantization level that is less than or equal to •, and ┌ω┐ is the nearest quantization level that is greater than or equal to •. In other words, the [R, G,B] can take values only at the eight vertices of the unit cube that contains high precision value [r,g,b]^(T) . Then, the minimization can be according to example relation (5) below: $\begin{matrix} {\begin{bmatrix} R \\ G \\ B \end{bmatrix} = {\arg\quad{\min\limits_{\underset{\underset{B \in {\{{{\lfloor b\rfloor},{\lceil b\rceil}}\}}}{G \in {\{{{\lfloor g\rfloor},{\lceil g\rceil}}\}}}}{R \in {\{{{\lfloor r\rfloor},{\lceil r\rceil}}\}}}}{{{M_{1} \cdot \begin{bmatrix} {r - R} \\ {g - G} \\ {b - B} \end{bmatrix}}}.}}}} & (5) \end{matrix}$

This minimization problem can be solved by an exhaustive search wherein the resulting images from the quantization method contain color values that have higher precision on luminance value. FIG. 2 shows an example functional block diagram of an embodiment of a quantizer 100 according to the present invention that implements the above process for luminance preserving quantization of high precision RGB signal. The quantizer 100 comprises a block 110 that determines the luminance of the original high resolution RGB input signal, a block 120 that determines possible RGB values within said small range, and a block 130 that selects the RGB value among the possible RGB values which essentially minimizes the difference in luminance before and after the quantization.

The error in luminance value (y) of a pixel is then contained in a smaller range than the direct rounding quantization. Table I below summarizes the luminance difference Ay between the 8 different possible quantized RGB colors and color [└r┘,└g┘,└b┘]^(T), where ΔRGB=[R−└r┘,G−└g┘,B−└b┘]^(T), and the difference in luminance is: Δy=M₁·ΔRGB. TABLE I LUMINANCE DIFFERENCES FOR EACH POSSIBLE QUANTIZATION RGB VALUE COMPARED WITH [└r┘, └g┘, └b┘]^(T). ΔRGB [0, 0, 0] [0, 0, 1] [0, 1, 0] [0, 1, 1] [1, 0, 0] [1, 0, 1] [1, 1, 0] [1, 1, 1] Δy 0 0.114 0.587 0.701 0.299 0.413 0.886 1

Because the quantization process minimizes the luminance difference Δy, the reachable luminance steps δy are much smaller than that can be represented by 8-bit Y value. Δy in Table I is sorted and δy is calculated and shown in Table II below: TABLE II REACHABLE LUMINANCE STEPS. Index 0 1 2 3 4 5 6 7 Δy 0 0.114 0.299 0.413 0.587 0.701 0.886 1 δy 0.114 0.185 0.114 0.174 0.114 0.185 0.114

As can be seen in Table II, the biggest luminance step δy is 0.185. Its equivalent bit-depth of luminance value Y is increased by δd bit, where $\begin{matrix} {{\delta\quad d} = {\log_{0.5}0.185}} \\ {= {2.43\quad{{bit}.}}} \end{matrix}$

Therefore, the quantized 8-bit RGB values preserved luminance precision as high as 8+2.43=10.43 bit.

Using the above quantization method, the original high precision rgb signal can be quantized to a 24-bit RGB while signal preserving high precision luminance value and keeping small color difference. The high precision luminance is achieved at the cost of the precision of chrominance, which is less sensitive in human eyes.

FIG. 3 shows an example functional block diagram of a video system 200 according to the present invention including a high precision RGB image signal source 310, a quantizer 320 that quantizes the high resolution image signal by preserving the luminance of the high resolution image signal, and a display system 330 for displaying the quantized signal.

While this invention is susceptible of embodiments in many different forms, there are shown in the drawings and will herein be described in detail, preferred embodiments of the invention with the understanding that the present disclosure is to be considered as an exemplification of the principles of the invention and is not intended to limit the broad aspects of the invention to the embodiments illustrated. The aforementioned example architectures above according to the present invention, can be implemented in many ways, such as program instructions for execution by a processor, as logic circuits, as ASIC, as firmware, etc., as is known to those skilled in the art. Therefore, the present invention is not limited to the example embodiments described herein.

The present invention has been described in considerable detail with reference to certain preferred versions thereof; however, other versions are possible. Therefore, the spirit and scope of the appended claims should not be limited to the description of the preferred versions contained herein. 

1. A method of video image color quantization, comprising the steps of: receiving an image signal comprising RGB signals having a first precision; quantizing the image signal into a quantized RGB signal having a second precision lower than the first precision; such that the luminance of the image signal is essentially preserved in the quantized RGB signal.
 2. The method of claim 1 wherein the step of quantizing further includes the steps of essentially minimizing quantization error in luminance information of the image signal.
 3. The method of claim 1 wherein the step of quantizing further includes the steps of: determining the luminance information of the image signal; essentially minimizing the quantization error in luminance information of the image signal by trading off the quantization error in chrominance information of the image signal.
 4. The method of claim 3 wherein the step of essentially minimizing the quantization error in luminance information of the image signal, further includes the steps of constraining chrominance errors while essentially minimizing luminance quantization errors.
 5. The method of claim 3 wherein the step of essentially minimizing the quantization error in luminance information of the image signal, further includes the steps of constraining chrominance errors while essentially minimizing luminance quantization errors to keep the color difference between the image signal and the quantized RGB signal within a tolerable range.
 6. The method of claim 1 wherein the steps of quantizing further includes the steps of formulating and solving a constrained minimization problem to essentially preserve the luminance of the original signal in the quantized RGB signal.
 7. The method of claim 1 wherein the steps of quantizing further includes the steps of essentially minimizing quantization errors in luminance of the image signal while ensuring that the difference in chrominance before and after quantization is constrained.
 8. The method of claim 1 wherein the first precision is high precision and the second precision is low precision, wherein both the first and second precisions can have arbitrary quantization levels.
 9. The method of claim 2 wherein the step of essentially minimizing further includes the steps of finding a set of n-bit RGB triples for the quantized RGB signal such that the quantization error in luminance components is essentially minimized.
 10. The method of claim 1 wherein the quantization step further includes the steps of: determining a set of possible RGB signal values for the quantized signal such that the difference in chrominance before and after quantization is constrained; and selecting an RGB signal value from the above possible RGB signal values that essentially minimizes the difference in luminance before and after quantization.
 11. The method of claim 10 wherein the set of possible RGB signal values (R,G,B) for the quantized RGB signal is within a range defined as: {[R,G,B]^(T)|Rε{└r┘,┌r┐},Gε{└g┘,┌g┐},Bε{└b┘,┌b┐}}, wherein r, g and b represent the image signal values.
 12. A video image color quantization system, comprising: a quantizer that receives an image signal comprising RGB signals having a first precision, and quantizes the image signal into a quantized RGB signal having a second precision lower than the first precision, such that the luminance of the image signal is essentially preserved in the quantized RGB signal.
 13. The system of claim 12 wherein the quantizer further essentially minimizes quantization error in luminance information of the image signal.
 14. The system of claim 12 wherein the quantizer further determines the luminance information of the image signal, and essentially minimizes the quantization error in luminance information of the image signal by trading off the quantization error in chrominance information of the image signal.
 15. The system of claim 14 wherein the quantizer further essentially minimizing the quantization error in luminance information of the image signal, by constraining chrominance errors while essentially minimizing luminance quantization errors.
 16. The system of claim 14 wherein the quantizer further essentially minimizes the quantization error in luminance information of the image signal, by constraining chrominance errors while essentially minimizing luminance quantization errors to keep the color difference between the image signal and the quantized RGB signal within a tolerable range.
 17. The system of claim 12 wherein the quantizer further solves a constrained minimization problem to essentially preserve the luminance of the original signal in the quantized RGB signal.
 18. The system of claim 12 wherein the quantizer further essentially minimizes quantization errors in luminance of the image signal while ensuring that the difference in chrominance before and after quantization is constrained.
 19. The system of claim 12 wherein the first precision is high precision and the second precision is low precision, wherein both the first and second precisions can have arbitrary quantization levels.
 20. The system of claim 13 wherein the quantizer further finds a set of n-bit RGB triples for the quantized RGB signal such that the quantization error in luminance components is essentially minimized.
 21. The system of claim 12 wherein the quantizer further determines a set of possible RGB signal values for the quantized signal such that the difference in chrominance before and after quantization is constrained, and further selects an RGB signal value from the above possible RGB signal values that essentially minimizes the difference in luminance before and after quantization.
 22. The system of claim 21 wherein the set of possible RGB signal values (R,G,B) for the quantized RGB signal is within a range defined as: {[R,G,B]^(T)|Rε{└r┘,┌r┐},Gε{└g┘,┌g┐},Bε{└b┘,┌b┐}}, wherein r, g and b represent the image signal values. 